#include <QApplication>
#include <QCommandLineParser>
#include <QDebug>
#include "dialogs/logindialog.h"
#include "network/networkclient.h"

int main(int argc, char *argv[]) {
    QApplication app(argc, argv);
    app.setApplicationName("智慧医疗管理系统");
    app.setApplicationVersion("1.0.0");
    
    // 解析命令行参数
    QCommandLineParser parser;
    parser.setApplicationDescription("智慧医疗管理系统客户端");
    parser.addHelpOption();
    parser.addVersionOption();
    
    // 添加服务器地址选项
    QCommandLineOption hostOption(QStringList() << "H" << "host",
                                  "服务器地址 (默认: 127.0.0.1)",
                                  "host",
                                  "127.0.0.1");
    parser.addOption(hostOption);
    
    // 添加端口号选项
    QCommandLineOption portOption(QStringList() << "P" << "port",
                                  "服务器端口 (默认: 8888)",
                                  "port",
                                  "8888");
    parser.addOption(portOption);
    
    parser.process(app);
    
    // 获取服务器配置
    QString host = parser.value(hostOption);
    quint16 port = parser.value(portOption).toUShort();
    
    // 设置默认服务器配置
    NetworkClient::instance().setDefaultServer(host, port);
    
    qDebug() << "客户端配置 - 服务器:" << host << "端口:" << port;
    
    // 显示登录对话框
    LoginDialog *loginDialog = new LoginDialog();
    loginDialog->setAttribute(Qt::WA_DeleteOnClose);
    loginDialog->show();
    
    return app.exec();
}

